package org.dczl.system.service;

import org.dczl.system.domain.DpLab;
import org.dczl.system.domain.vo.DpLabVo;
import org.dczl.system.domain.bo.DpLabBo;
import org.dczl.common.mybatis.core.page.TableDataInfo;
import org.dczl.common.mybatis.core.page.PageQuery;
import org.dczl.system.domain.vo.DpRatioVo;
import org.dczl.system.domain.vo.DpWeatherVo;

import java.util.Collection;
import java.util.List;

/**
 * 实验室Service接口
 *
 * @author jia
 * @date 2025-04-16
 */
public interface IDpLabService {

    /**
     * 查询实验室
     */
    DpLabVo queryById(Long id);

    /**
     * 查询实验室列表
     */
    TableDataInfo<DpLabVo> queryPageList(DpLabBo bo, PageQuery pageQuery);

    /**
     * 查询实验室列表
     */
    List<DpLabVo> queryList(DpLabBo bo);

    List<DpLabVo> daPing();

    List<DpRatioVo> ratio();

    List<DpLabVo> list();

    DpWeatherVo weather();

    /**
     * 新增实验室
     */
    Boolean insertByBo(DpLabBo bo);

    /**
     * 修改实验室
     */
    Boolean updateByBo(DpLabBo bo);

    /**
     * 校验并批量删除实验室信息
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}
